Descrição do problema

Um cliente solicita que você construa um score de crédito customizado para um novo público. Uma amostra analítica contendo 1000 registros foi extraída do banco de dados. O arquivo contendo a amostra de dados se encontra no seguinte endereço: (https://archive.ics.uci.edu/ml/machine-learning-databases/statlog/german/german.data)

Atributos do banco de dados

Attribute 1: (qualitative) Status of existing checking account A11 : ... < 0 DM A12 : 0 <= ... < 200 DM A13 : ... >= 200 DM / salary assignments for at least 1 year A14 : no checking account

Attribute 2: (numerical) Duration in month

Attribute 3: (qualitative) Credit history A30 : no credits taken/ all credits paid back duly A31 : all credits at this bank paid back duly A32 : existing credits paid back duly till now A33 : delay in paying off in the past A34 : critical account/ other credits existing (not at this bank)

Attribute 4: (qualitative) Purpose A40 : car (new) A41 : car (used) A42 : furniture/equipment A43 : radio/television A44 : domestic appliances A45 : repairs A46 : education A47 : (vacation - does not exist?) A48 : retraining A49 : business A410 : others

Attribute 5: (numerical) Credit amount

Attribute 6: (qualitative) Savings account/bonds A61 : ... < 100 DM A62 : 100 <= ... < 500 DM A63 : 500 <= ... < 1000 DM A64 : .. >= 1000 DM A65 : unknown/ no savings account

Attribute 7: (qualitative) Present employment since A71 : unemployed A72 : ... < 1 year A73 : 1 <= ... < 4 years A74 : 4 <= ... < 7 years A75 : .. >= 7 years

Attribute 8: (numerical) Installment rate in percentage of disposable income

Attribute 9: (qualitative) Personal status and sex A91 : male : divorced/separated A92 : female : divorced/separated/married A93 : male : single A94 : male : married/widowed A95 : female : single

Attribute 10: (qualitative) Other debtors / guarantors A101 : none A102 : co-applicant A103 : guarantor

Attribute 11: (numerical) Present residence since

Attribute 12: (qualitative) Property A121 : real estate A122 : if not A121 : building society savings agreement/ life insurance A123 : if not A121/A122 : car or other, not in attribute 6 A124 : unknown / no property

Attribute 13: (numerical) Age in years

Attribute 14: (qualitative) Other installment plans A141 : bank A142 : stores A143 : none

Attribute 15: (qualitative) Housing A151 : rent A152 : own A153 : for free

Attribute 16: (numerical) Number of existing credits at this bank

Attribute 17: (qualitative) Job A171 : unemployed/ unskilled - non-resident A172 : unskilled - resident A173 : skilled employee / official A174 : management/ self-employed/ highly qualified employee/ officer

Attribute 18: (numerical) Number of people being liable to provide maintenance for

Attribute 19: (qualitative) Telephone A191 : none A192 : yes, registered under the customers name

Attribute 20: (qualitative) foreign worker A201 : yes A202 : no

Attribute 21: (numerical) response variable 1: bad 2: good O atributo binário “response variable” é a variável resposta do problema em que a categoria “bad” representa clientes inadimplentes (maus pagadores) e “good” clientes que pagam suas contas em dia (bons pagadores).

A Regressão Logística

Análise Exploratória

Análise Descritiva

Com a ajuda do pandas profiling, podemos observar a distribuição e variação dos dados de uma forma rápida e visual.

Algumas curiosidades sobre o dataset:

No arquivo acima temos as mesmas informações, mas segmentadas por variável com valores binários

#

#

Podemos observar que agora cada variável categórica possui uma coluna própria, com 0 ou 1, indicando ausência ou presença.

Iremos pegar esse conjunto de dados (dummies) para prever o target (dados_y)

Existem várias maneiras de normalizar e padronizar variáveis numéricas, cada uma com seus próprios benefícios e desvantagens.

A normalização é o processo de transformar uma variável numérica em uma escala específica, geralmente entre 0 e 1. Isso é feito subtraindo o valor mínimo da variável de cada valor e, em seguida, dividindo-o pelo intervalo (valor máximo menos valor mínimo). A fórmula para normalização é dada por:

(x - min(x)) / (max(x) - min(x))

A Padronização é o processo de transformar uma variável numérica para que tenha uma média de 0 e desvio padrão de 1. A fórmula para padronizar é:

(x - mean(x)) / std(x)

É importante notar que a normalização é apropriada quando se tem um conhecimento que os dados estão entre uma faixa específica, enquanto a padronização é mais apropriada quando se desconhece a distribuição dos dados. Ambas são utilizadas para evitar que atributos com grandes escalas dominem outros atributos com pequenas escalas. Além disso, em algumas áreas específicas, como a Rede Neural, é necessário normalizar os dados antes de treiná-los, pois algumas funções de ativação só funcionam corretamente se os dados estiverem dentro de uma determinada escala.

Ou seja, quanto mais perto a probabilidade de 1 , maior a chance de ser bom pagador
Valores com probabilidade acima de 0.5 são classificados como bons pagadores
Valores com probabilidade abaixo de 0.5 são classificados como maus pagadores

Outra forma de fazer...